Method and apparatus for deriving benchmarks for trading instruments

ABSTRACT

Benchmarks for the price of a financial instrument such as FX spot rate for a currency pair are calculated by an algorithm based on a previous benchmark and a market price. The market price is derived from a deal price and a quote price. The deal price is based on deals conducted since the last benchmark and the quote price is based on bids and offers entered since the last benchmark. For each of the deal and quote prices, a price, weight and scatter is calculated which is used to calculate a benchmark price, weight and scatter and a benchmark error.

FIELD OF THE INVENTION

This invention relates to methods, apparatus and systems for deriving benchmarks for use in trading instruments, particularly but not exclusively, financial instruments such as foreign exchange (FX), including FX spot, FX forwards and other foreign exchange products.

BACKGROUND TO THE INVENTION

Benchmarks are used in the trading of instruments such as FX spot to provide a reference point which indicates the actual state of the market and which is neither biased to the buy side or sell side of the market. As markets can move very rapidly it is important to recalculate the benchmarks frequently and to distribute them to participating traders and other interested parties so that the benchmarks remain a reliable indicator.

Benchmarks may be derived in a number of ways. However, all are based on the market history, and access to good information as to the current state of the market, and trades conducted in the market is essential. Typically, a financial institution will trade a variety of currency pairs and benchmarks need to be established in each of those pairs.

SUMMARY OF THE INVENTION

The present invention aims to provide an improved algorithm for calculation of benchmarks. The algorithm calculates benchmarks on the basis of the prices of deals conducted since a previous benchmark was established, quotes at present in the market and the previous benchmark price. The invention further aims to provide a computerized system which can calculate those benchmarks according to the algorithm and then deliver them to traders.

More specifically there is provided a method of establishing a benchmark price for trades in a instrument at a given time, comprising: acquiring from at least one trading system the price at which deals in the instrument have been conducted since a previous benchmark price was established; acquiring the prices of quotes at present in the trading system; calculating a market price from the deal prices and the quote prices; and calculating a benchmark price from the previous benchmark price and the market price.

Preferably, the benchmark is established periodically every t seconds. This enables the benchmark price to remain an accurate reflection of the true state of the market.

Preferably, the calculation of market prices includes the weighting of deal prices according to size and/or age. Weighting may be performed in terms of multiples of a minimum deal size, preferably according to the formula W(d_(i))=V_(i)*2^(−ct) where V_(i) is the volume of the deal, t is the elapsed time since the previous benchmark, and c is a constant determining the speed at which deals are marked down over time.

Preferably, the calculation of market prices includes the summing of the weights of all deal prices occurring since the previous benchmark.

The market price may be calculated from a deal price obtained from the arithmetic average of individual deal prices for deals conducted since the previous benchmark was established, weighted by their deal weight. Deal price calculation may further include calculation of a scatter for deals conducted since the previous benchmark price was established. This deal price scatter may be derived from the standard deviation of deals measured with respect to deal price and weight.

The calculation of market prices may also comprise weighting quote prices according to size and age. Weighting may be in terms of a minimum quote size and may be according to their distance from the best quote in the market. Weighting may be performed according to the formula: W(Q_(i))=V_(i)*2^(−P(Qi)−B) where V_(i) is the volume of a quote, P(Q_(i)) is the quote price and B is the best bid or offer depending on whether Q_(i) is a bid or an offer.

All quote prices occurring since the previous benchmark may also be summed and adjusted by a constant representing demand as part of the process of obtaining the market price.

Preferably, a quote scatter price is also calculated for all quotes entered into the market since the previous benchmark price was established. This scatter may be derived from the standard derivation of quote prices measured with respect to quote price and weight.

Preferably, the market price is derived from an average of the quote and deal prices each sealed by its own weight. A market price weight is calculated from the sum of the deal and quote price weights. Preferably a market price scatter is calculated, for example from the standard derivation of weighted market prices.

Preferably, a phantom price is also calculated. If no prices have been entered since the last benchmark, this phantom price is equal to the previous benchmark. If prices have been entered, this price is zero.

The phantom price may have a weight which is equal to a very small constant, for example 0.5*10⁻⁶. The phantom price may also have a scatter which is equal to a small constant, such as 1% of the base figure of the instrument being traded.

Preferably, the benchmark price is derived from the market price, a market price weight, the previous benchmark price, and a previous benchmark price weight. The latter weight may be calculated from the sum of the market price weight and the last benchmark price weight modified by a time markdown.

Preferably, a benchmark price error is also calculated. This error may be a standard error derived from the benchmark scatter and the benchmark price weight.

A further aspect of the invention provides a method of establishing a benchmark price for trades in a instrument at a given time, comprising: acquiring from at least one trading system deal price information relating to prices at which deals in the instrument have been conducted since a previous benchmark price was established; calculating from the deal price information, a deal price weight, a deal price and a deal scatter; acquiring from the at least one trading system price quote information relating to the prices of quotes at present in the trading system; calculating from the quote price information a quote price weight, a quote price and a quote price scatter; calculating a market price weight, a market price and a market price scatter from the deal price weight, the deal price and the deal price scatter, the quote price weight, the quote price and the quote price scatter; and calculating a benchmark price from the previous benchmark price and the market price.

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments of the invention will now be described, by way of example only, and with reference to the accompanying drawings, in which:

FIG. 1 illustrates how deal prices may be scattered or condensed during any time interval;

FIG. 2 is an example of a benchmark established in a quote only market;

FIG. 3 is a further example of a benchmark established in a quote only market;

FIG. 4 is a still further example of a benchmark established in a quote only market;

FIG. 5 is an example of a benchmark established in a deal only market;

FIG. 6 is a further example of a benchmark established in a deal only market;

FIG. 7 is a still further example of a benchmark established in a deal only market;

FIG. 8 is a schematic block diagram of a system for implementing calculating and delivering benchmarks to traders; and

FIG. 9 is a schematic block diagram of a further embodiment of a system for implementing calculating and delivering benchmarks to traders in which benchmarks are also exchanged with a third party.

DESCRIPTION OF BEST MODE

The algorithm used to calculate benchmark prices will first be described. A computerized system which can calculate those benchmarks according to the algorithm and then deliver them to traders will then be described.

The following description considers how benchmark prices are derived from the various trading data that is available, for example from an anonymous trading system, or another trading system or systems. The Benchmark price is derived from the market price and the previous Benchmark price. The market price is itself derived from the deal price and the quote price. The deal price is calculated from actual deals that have been done on the system and the quote price is calculated from quotes (bids and offers) that have been entered into the system by traders.

In the foreign exchange market, for example, the price of a currency pair moves up and down. The Benchmark Price attempts to describe the price best by utilizing market information acquired from one or more sources, such as an anonymous trading system. The Benchmark Price is calculated at a given frequency, for example, every t seconds. At each tick, a Benchmark is published along with a margin of error called the Standard Error.

Using the market information from the trading system is like sampling the price population at the tick time. This sample includes deal and quote transactions. These transactions act as traders' votes on where the market is.

The currency pair price is a population (P) at any given moment. Suppose its mean is MN(P) (the “true price”) and its Standard Deviation is SD(P). The Benchmark Price approximates MN(P) by sampling this price population. In the following description, P is used to represent the “price population” as well as the price; that is, the Mean price of the population, just as MN(P).

A general overview will first be given, showing how Benchmark prices are calculated. The derivation of each element will then be discussed in more detail.

Prices

At time n, Benchmark Price P_(n) is derived from Market Price at the time, and P_(n−1), the Benchmark Price at the last tick n−1. Market price consists of Deal Price calculated from deals that occurred in the past time interval, and Quote Price calculated from quotes at the moment.

These four elements may be expressed as follows:

At time n: DealPrice=function (deal price and volume in the past time interval of n−1 to n); QuotePrice=function (quotes price and volume at n); MarketPrice=function (QuotePrice, DealPrice); and BenchmarkPrice=function (MarketPrice, BenchmarkPrice at n−1).

Weight and Scatter

For each of these prices, an associated weight W and a value of Scatter, or an approximated Standard Deviation, σ are also calculated. That is, a triplet of (P, W, σ) is associated with each data point.

In the following description, the manner in which each of these three P, W, σ will be discussed for DealPrice, QuotePrice, MarketPrice and BenchmarkPrice.

The weight serves as the sample size in statistical terms. In this example, in common with most anonymous trading systems, traders can trade at a minimum trading size. The parameter, which is defined by the trading system, is the minimum amount of a bid or offer order. In an interbank trading system trading spot FX this is typically in the order of $US 1 million ($1M). Every minimum trading size in the trades should be considered as ONE “vote” for a price. All “votes” should be taken into consideration. The larger the volume of a transaction, the more the “votes” (more confidence about the price) carried by the trade.

In other words, a trading amount is converted to units of “minimum trading size” when it is being weighted. Where the minimum is $1M, a bid of $10M would count as 10 votes when being weighed.

The weight of the price W and Scatter σ are used internally. The weight W is used when the price is combined with other prices to form a new one.

Standard Error

From the weight W and Scatter σ, a margin of error or a Standard Error is calculated. It provides a measure of confidence in the Benchmark Price derived from the market data.

Consider a Benchmark B as a sample of the price population P using market information (prices/volumes of deals and quotes). Let MN(B), WT(B), SD(B), and SE(B) be the mean (Benchmark Price), Weight (sample size), Standard Deviation, and Standard Error, respectively.

If Standard Error SE(B)=SE (pips), then we can say that the sample mean MN(B) has a 95% chance of lying within two SE of the mean of the population of MN(P) (the “true price”), or, the Benchmark Price has a 95% chance satisfying:

MN(P)−2*SE<Benchmark Price<MN(P)+2*SE

That is, the Benchmark Price is almost certain (a 95% chance) in the 2*SE-neighborhood of the “true price”. Apparently, the smaller the SE, the more precise is the Benchmark Price.

For example, if MN(S)=0.9779 and SE(S)=0.00002, and P is the “true price” of the currency pair, then the Benchmark Price of 0.9779 has a 95% chance lying within (P−0.00004, P+0.00004 or, conversely, P has a 95% chance of lying within the Benchmark Price interval of (0.97786, 0.97794).

The Standard Error and its formula is discussed in greater detail later on.

Thus, it can be seen that the Deal Price and the Quote Price are the fundamental building blocks of the Benchmark Price. The manner in which these are obtained will now be discussed in detail.

Deal Price

The Benchmark is calculated at a certain frequency. At each tick t when the Benchmark is to be calculated, there may be deals which have occurred since calculation of the last Benchmark at time (t−1). Deal Price is derived from the deals in the past time interval. It is an average price of all deal prices weighted by the volume and age of deals.

Deal Price Weight (W_(d))

Deals of larger amounts count more than smaller amounts. Recent deals count more than aged deals.

“Minimum Trading Size” Adjustment

As mentioned above, each deal is weighted by the “minimum trading size”. That is, the Volume V_(i) of a deal d_(i) is the deal's amount in the units of minimum trading size. In the $10M example above, the volume would be 10.

Time Markdown

In the past time interval since the last benchmark price, many deals may have occurred. Deals that happened in the same second (or some other defined time interval) are considered the same “age”. Going backwards, the deals that occurred in the second away from the tick-time are discounted by an exponential function 2^(−ct), where t is the number of seconds away from the tick-time and c is a constant.

For example, if c=0.5 and t=1 (one second earlier than tick-time), 2^(−ct)=2^(−0.5)=0.707. That is, the deal that happened one second ago is worth 70.7% of the deal that happened now (at tick-second). If c=1 and t=1, 2^(−ct)=2⁻¹=0.5. That is, the deal that happened one second ago is worth one-half of the deal that happened now (at tick-second).

Weight of a Deal

To apply the minimum trading size adjustment and time markdown to deals that occurred in the past time interval, the weight of a deal d_(i) must be calculated as follows:

W(d _(i))=V _(i)*2^(−ct),  Equation 1

where

-   -   V_(i) is the Volume (deal amount in minimum trading size units)         of deal d_(i);     -   t is time elapsed in seconds since d_(i) occurred (to the         tick-time);     -   c is a constant coefficient of adjustment defining the speed of         deal price markdown.

Deal Price Weight

The Deal Price Weight consists of all weights of all deals that occurred in the past time interval. It is a summation of all deal weights:

W _(d)=Σ_(i) W(d _(i))=Σ_(i) V _(i)*2^(−ct)  Equation 2

where Σ₁ runs over all deals occurring in the past time interval;

-   -   V_(i) is the Volume (deal amount in “minimum trading size”         units) of deal d_(i);     -   t is time elapsed in second since d_(i) occurred (to the         tick-time);     -   c is a constant coefficient of adjustment defining the speed of         deal price markdown.

Table 1 lists the time-markdown-values of 2^(-ct) according to time elapsed (t) for C=0.5 and C=1.0:

TABLE 1 c = 0.5 c = 1.0 t −ct 2 − ct −ct 2 − ct 0 0.0 1.0000 0.0 1.0000 1 −0.5 0.7071 −1.0 0.5000 2 −1.0 0.5000 −2.0 0.2500 3 −1.5 0.3536 −3.0 0.1250 4 −2.0 0.2500 −4.0 0.0625 5 −2.5 0.1768 −5.0 0.0312 6 −3.0 0.1250 −6.0 0.0156 7 −3.5 0.0884 −7.0 0.0078 8 −4.0 0.0625 −8.0 0.0039 9 −4.5 0.0442 −9.0 0.0020 10 −5.0 0.0312 −10.0 0.0010

It will be seen that the larger the value of C, the faster the markdown.

In the special case of a Benchmark frequency of one second, the Benchmark is calculated every second and only deals that occurred in the past second are used in the calculation. Then Equation 2 becomes

W _(d)=Σ_(i) W(d _(i))=Σ_(i) V _(i)*2^(−ct)=Σ_(i) V _(i)*2^(−c×0)=Σ_(i) V _(i)*1=Σ_(i) V _(i).

This suggests that the parameter c that controls the markdown speed looses its effect, and the time markdown disappears, as will been seen below, the time markdown is used in the form of a historical price markdown, where c plays the same role.

Deal Price (P_(d))

If P(d_(i)) is the price of a deal d_(i), then the combined deal price of all deals that occurred in the past time interval is simply the arithmetic average of all deals weighted by their Weights of Deal:

$\begin{matrix} {P_{d} = \frac{\sum\limits_{i}{{P\left( d_{i} \right)}*{W\left( d_{i} \right)}}}{\sum\limits_{i}{W\left( d_{i} \right)}}} & {{Equation}\mspace{14mu} 3} \end{matrix}$

where

-   -   Σ_(i) runs through all deals d_(i) occurred in the past time         interval.

In the case of a one-second Benchmark, each deal's weight is its Volume. Table 2 lists the Deal Price of five deals that occurred in the past time interval. The Deal Price is a real number, not restricted by whole pips 0.9779882353.

TABLE 2 Deals Price (P) Weight (W) P * W 1 0.9781 2 1.956200 2 0.9780 2 1.956000 3 0.9781 1 0.978100 4 0.9780 7 6.846000 5 0.9779 5 4.889500 Total: 17 16.625800 Deal Price 0.9779882353 (Pd): Deal Price Scatter (σ_(d))

In the past time interval, deal prices may scatter widely, reflecting a market in which traders disagree with each other on where the market is and the votes are widespread. Alternatively, deal prices may concentrate at one spot, where everyone agrees where the market is. This is illustrated in FIG. 1.

The Deal Price Scatter can be measured by the Standard Deviation of deals:

$\begin{matrix} {\sigma_{d} = \left. \sqrt{}\frac{\sum\limits_{i}{{W\left( d_{i} \right)}\left( {{P\left( d_{i} \right)} - P_{d}} \right)^{2}}}{\sum\limits_{i}{W\left( d_{i} \right)}} \right.} & {{Equation}\mspace{14mu} 4} \end{matrix}$

where

-   -   P_(d) is the Deal Price calculated from equation 3 above;     -   W(d_(i)) is the individual Deal Weight derived from equation 1         above;     -   Σ_(i) runs through all deals d_(i) that occurred in the past         time interval.

The Standard Deviation (SD) of a population is a measurement of the spread of the population distribution. It is like an average distance of the population to the mean of the population. Large SD is a good indication of volatility showing that prices are widely dispersed from the average.

Using the example above, table 3 shows the Scatter: Scatter=sqrt (0.0000000776/17)=0.0000675831.

TABLE 3 W * (P − Deals Price (P) Weight (W) P * W Pd)2 1 0.9781 2 1.956200 0.0000000250 2 0.9780 2 1.956000 0.0000000003 3 0.9781 1 0.978100 0.0000000125 4 0.9780 7 6.846000 0.0000000010 5 0.9779 5 4.889500 0.0000000389 Total: 17 16.625800 0.0000000776 Deal Price 0.9779882353 (Pd): Scatter 0.0000675831 (σ_(d)):

It will be appreciated from the above discussion that Equations 1, 2, and 3 define, respectively, the three elements (P_(d), W_(d), σ_(d)) of Deal Price.

Quote Price

Quote Price is derived from all live quotes in the anonymous trading system or other data source at the tick-time.

When there are more offers in the market, more people are trying to sell. The liquidity on the offer/selling side results in sells at the prices of the “front line” of bids, the Best Bid.

Conversely, if there are more bids, more people are buying. The liquidity on the bid/buying side results in buys at the prices of the “front line” of offers, the Best Offer.

Quote Price maps market liquidity to “Buying Power” at the Best Bid and Best Offer prices at the time.

Quote Price Weight (W_(q))

As with Deal Price, a quote with a small amount is worth less than a quote with a large amount. A far-away-from-the-market quote is not worth as much as a close-to-the-market quote. To describe the weight of a quote, we need to take into consideration both the amount and the positioning of the quote with respect to the best Bid/Offer.

“Minimum Trading Size” Adjustment

A quote can be at the minimum trading size. Therefore, each quote is weighted by the minimum trading size. That is, the Volume of a quote Q_(i) is the quote's amount in the units of minimum trading size.

Distance Markdown

The front line of a market is drawn by the Best Bid (P_(b)) and Best Offer (P_(o)). The distance of a quote price from the Best, measured in the number of pips, shows “how good the quote price is”. The term “pip” is well understood in the financial trading art and refers to the least significant digit of the price that is quoted.

At any moment, the Best Bid is the highest bid, and the Best Offer is the lowest offer of the Market from which data is obtained, regardless of credit situation. This is not always the best price that is displayed to traders, as many trading systems do not display to traders prices which they cannot deal, for example submitted by a counterparty with whom they have no or insufficient credit.

If P(Q_(i)) is the price of a quote Q_(i), and B is the price of the Best of the same side, then the distance of this quote to the Best is |P(Q_(i))−B|. The position markdown is defined by the exponential function:

2^(−|P(Qi)−B|)

When the distance is 0, 1, 2, 3, 4, . . . , (pips), 2^(−|P(Qi)−B|)=1, ½, ¼, ⅛, 1/16, . . . .

Weight of a Quote

To apply minimum trading size and the distance markdown, the weight of a quote Q_(i) is:

W(Q _(i))=V _(i)*2^(−|P(Qi)−B|),  Equation 5

where

-   -   V_(i) is the Volume (quote amount in “minimum trading size”         unit) of quote Q_(i);     -   P(Q_(i)) is the price of quote Q_(i);         B=P_(b) (Best Bid) if Q_(i) is a bid, B=P_(o) (Best Offer) if         Q_(i) is an offer, and         |P(Qi)−B| is in the number of pips, the distance to the Best         Price.

It can be seen that a quote is weighted by its Volume and marked down by its distance to the Best Price.

Table 4 shows an example of weight of quotes. All quotes have the same Volume, but the distances to the Best vary.

TABLE 4 Offers Price Volume Distance Weight 1 0.9780 10 0 10.0000 2 0.9781 10 1 5.0000 3 0.9782 10 2 2.5000 4 0.9783 10 3 1.2500 5 0.9784 10 4 0.6250

The weight of the quotes goes down ½ each time the quote moves one more pip away from the market.

In the example of Table 5 below, the quotes' distances to the Best vary, and their Volumes get larger when moving away from the market.

TABLE 5 Bids Price Volume Distance Weight 1 0.9779 10 0 10.0000 2 0.9778 20 1 10.0000 3 0.9777 40 2 10.0000 4 0.9776 80 3 10.0000 5 0.9775 160 4 10.0000

As can be seen from Table 5, a volume of twenty at one-pip away is worth (is equivalent to) a volume of 10 at the zero-pip; a volume of 160 at 4-pips away is worth (is equivalent to) the volume of 10 at zero-pip.

Weight of All Quotes

The weight of a group of quotes is merely the summation of the weight of each individual quote.

The Weight of Bids is

V _(b)=Σ_(i) ^(b) W(Q _(i))=Σ_(i) ^(b) V _(i)/2^((Pb−Pi)),  Equation 6

and the Weight of Offers is

V _(o)=Σ_(i) ^(o) W(Q _(i))=Σ_(i) ^(o) V _(i)/2^((Pi−Po)),  Equation 7

where

-   -   W(Q_(i)) is the weight of quote Q_(i);     -   Σ_(i) ^(b) sums up all bids, Σ_(i) ^(o) sums up all offers;     -   V_(i) is the Volume of quote Q_(i);     -   P_(b) is the Best Bid, P_(o) is the Best Offer, and         (P_(b)−P_(i)), (P_(i)−P_(o)) are in pips.     -   Note the (P_(b)−P_(i))≧0 since P_(b) is the highest bid, and         (P_(i)−P_(o))≧0 since P_(o) is the lowest offer.

Thus, the Weight of Bids V_(b) is the volume-equivalent of the bids at the Best Bid price, and the Weight of Offers V_(o) is the volume-equivalent of the offers at Best Offer price.

The Quote Price Weight consists of a scaled summation of Bid Weight and Offer Weight. The Quote Price Weight is:

W _(q)=λΣ_(i) W(Q _(i))=λ(V _(b) +V _(o))  Equation 8

where λ is a constant coefficient which controls the share of quote's weight in Market Price, as will be discussed;

V_(b) is the Weight of Bids; and V_(o) is the Weight of Offers.

Where the market is one-sided, that is there are only bids or offers in the market, W_(q)=0. That is, one-sided quotes do not carry any weight. In the next section to be described, the quotes are converted to “deals” in the calculation of a quote's price. An “empty” side causes the “deal price” to be zero. Therefore, the weight of non-deal is zero.

Table 6 shows an example of Weight of Offers. Although there are five offers in the market with a total volume of 50, the offers are worth 19.375 at the Best Offer price.

TABLE 6 Offers Price Volume Distance Weight 1 0.9780 10 0 10.0000 2 0.9781 10 1 5.0000 3 0.9782 10 2 2.5000 4 0.9783 10 3 1.2500 5 0.9784 10 4 0.6250 Vo: 19.3750

Table 7 shows an example of Weight of Bids. Although there are five bids in the market with a total volume of 310, the bids are worth 50 at the Best Bid price.

TABLE 7 Bids Price Volume Distance Weight 1 0.9779 10 0 10.0000 2 0.9778 20 1 10.0000 3 0.9777 40 2 10.0000 4 0.9776 80 3 10.0000 5 0.9775 160 4 10.0000 Vb: 50.0000

Table 8 shows an example of the Quote Price Weight. (V_(b)+V_(o))=69.375 volume of quote, but the Quote Price Weight is reduced to 6.940 due to the λ scale-down.

TABLE 8 Offers Price Volume Distance Weight Bids Price Volume Distance Weight 1 0.9780 10 0 10.0000 1 0.9779 10 0 10.0000 2 0.9781 10 1 5.0000 2 0.9778 20 1 10.0000 3 0.9782 10 2 2.5000 3 0.9777 40 2 10.0000 4 0.9783 10 3 1.2500 4 0.9776 80 3 10.0000 5 0.9784 10 4 0.6250 5 0.9775 160 4 10.0000 Vo: 19.3750 Vb: 50.0000

From Table 8, if λ=0.1, then:

W _(q)=λ(V _(b) +V _(o))=0.1*(19.375+50.0)=6.9375.

Quote Price (P_(q))

The weight of bids V_(b) and offers V_(o) defines “buying and selling demand” at the time. The Buys/Sells resulting from the demand is a function of the prices (P_(b), P_(o)) and the liquidity (V_(b), V_(o)) at the time. That is, Buys=Function_(b) (V_(b), V_(o), P_(b), P_(o)). Similarly, Sells=Function_(s)(V_(b), V_(o), P_(b), P_(o)).

The buy volume is proportional to V_(b) (buying demand) and the sell volume is directly proportional to V_(o) (selling demand). Therefore, Function_(b) and Function_(s) are linear:

deal-volume=λ*demand,

or more specifically,

Buy-volume=λ*(buying demand)=λ*V_(b),

Sell-volume=λ*(selling demand)=λ*V_(o);

where λ is a constant coefficient (a percentage) that converts quote volume into deal volume.

Deals almost always occur only at or near the “front line” of the market. That is, buys resulting from the buying demand are at the Best Offer price of P_(o), and sells resulting from the selling demand are at the Best Bid price of P_(b). There will be some deviation from this, particularly where a party does not have credit with the owner or owners of the best offer or bid and so trades below the front line. Even so the trade will almost always be very close to that front line.

The bids, and the resulting “buying power”, are now converted into deals of buy at the price of PO and volume of λ*V_(b). The offers, and the resulting “selling power”, are now converted into deals of sell at price P_(b) and volume of λ*V_(o).

As quotes are mapped into “deals” of buys of λV_(b) volume at price P_(o) and sells of λV_(o) volume at price P_(b), the deal price formula of Equation 3 can be used to derive the Quote Price P_(q):

$\begin{matrix} {P_{q} = {\frac{{P_{b}*\lambda \; V_{o}} + {P_{o}*\lambda \; V_{b}}}{{\lambda \; V_{o}} + {\lambda \; V_{b}}} = \frac{{P_{b}*V_{o}} + {P_{o}*V_{b}}}{V_{o} + V_{b}}}} & {{Equation}\mspace{14mu} 9} \end{matrix}$

where

-   -   P_(b) and P_(o) are Best Bid and Best Offer, respectively;     -   V_(b) and V_(o) are Weight of Bids and Weight of Offers,         respectively.

P_(q) is the average price of buys at P_(o) with volume λV_(b) and sells at P_(b) with volume V_(o). Note that in Equation 8, the λs are cancelled out. That is, λ does not influence the outcome of Quote Price. Quote Price is solely determined by the Best Prices and the liquidity of the market.

Mapping quotes to “deals” requires both sides of the market to work. In the cases of no quote or a one-sided-market, P_(q)=0. As stated above, in these cases, the quote's weight is also zero.

By way of example, and continuing from the results of Table 8 above, where P_(b)=0.9779, P_(o)=0.9780, V_(b)=50.0, and V_(o)=19.375, we have

$P_{q} = {\frac{{P_{b}*V_{o}} + {P_{o}*V_{b}}}{V_{o} + V_{b}} = {\frac{\begin{matrix} {{0.9779*19.375} +} \\ {0.9780*50.0} \end{matrix}}{19.375 + 50.0} = 0.9779720720719}}$

As the buying demand is larger (V_(b)=50.0>V_(o)=19.375), the Quote Price P_(q) is pushed up, at almost the Best Offer price.

Quote Price Scatter (σ_(q))

Since the quotes are mapped into deals, we can apply the formula of Deal Scatter on the quotes'. According to Equation 4, the quote “scatterness” the Standard Deviation of quotes is:

$\begin{matrix} {\sigma_{q} = {\left. \sqrt{}\frac{\begin{matrix} {{\lambda \; {V_{o}\left( {P_{b} - P_{q}} \right)}^{2}} +} \\ {\lambda \; {V_{b}\left( {P_{o} - P_{q}} \right)}^{2}} \end{matrix}}{{\lambda \; V_{o}} + {\lambda \; V_{b}}} \right. = \left. \sqrt{}\frac{\begin{matrix} {\; {{V_{o}\left( {P_{b} - P_{q}} \right)}^{2} +}\;} \\ {V_{b}\left( {P_{o} - P_{q}} \right)}^{2} \end{matrix}}{\; {V_{o} + \; V_{b}}} \right.}} & {{Equation}\mspace{14mu} 10} \end{matrix}$

-   -   P_(q) is the Quote Price derived from Equation 8 above;     -   P_(b) and P_(o) are EBS Best Bid and Best Offer, respectively;     -   V_(b) and V_(o) are Weight of Bids and Weight of Offers,         respectively.

It can now be seen that the three elements of the triplet (P_(q), W_(q), σ_(q)) of Quote Price are defined by Equations 9, 8 and 10 respectively.

Where the market is one sided, σ_(q)=0.

Table 9 shows how the quote scatter is obtained, using the results of Table 8 and the value of P_(q) obtained above.

TABLE 9 Vb + Scatter Pb Po Pq Vb Vo Vo(Pb − Pq)2 Vb(Po − Pq)2 Vo (σ_(q)) 0.9779 0.9780 0.9779720721 50.000 19.375 0.0000001006 0.0000000390 69.375 0.0000448645

The Deal Price triplet (P_(d), W_(d), σ_(q)) and the Quote Price triplet (P_(q), W_(q) and σ_(q)) have now been defined. These values need to be consolidated in the Market Price to give a good indication of where the market actually is.

Market Price

The Market Price Triplet (P_(m), W_(m), σ_(m)) is constructed by simply combining Deal Price information (P_(d), W_(d), σ_(d)) and Quote Price information (P_(q), W_(q), σ_(q)). Without using historical information, Market Price is calculated from current live quotes and the latest deals that occurred in the past time interval.

Market Price (P_(m))

The Market Price PM is derived by averaging the Quote Price and Deal Price, and each is scaled by its Weight:

$\begin{matrix} {P_{m} = \frac{{P_{q}*W_{q}} + {P_{d}*W_{d}}}{W_{q} + W_{d}}} & {{Equation}\mspace{14mu} 11} \end{matrix}$

where

-   -   P_(q) is the Quote Price from Equation 8 above;     -   P_(d) is the Deal Price from Equation 3;     -   W_(q) is the Quote Weight from Equation 7; and     -   W_(d) is the Deal Weight from Equation 2.

Equation 8 stated that W_(q)=λ (V_(b)+V_(o)), and the constant coefficient λ is used to control the share of quotes. Equation 11 shows that since Quote Price is weighted by its weight of W_(q), and W_(q)=λ (V_(b)+V_(o)), λ plays an important role of scaling quote weight in respect to Deal Weight. Thus, if λ=0.1, it means a 10 volume of quotes is worth one volume of deals.

Following on from the Example of Table 10, Table 11 shows how Equation 10 can be used to obtain the market price.

TABLE 11 Pq 0.9779720721 0.9779882353 Pd Wq 6.9375 17.0000 Wd σ_(q) 0.0000448645 0.0000675831 σ_(d) Market 0.9779835509 Price:

Market Price Weight (W_(m))

The Market Price Weight is summation of Deal Price Weight and Quote Price Weight:

W _(m) =W _(d) +W _(q)  Equation 12

W_(d) and W_(q) calculations are stated by Equations 2 and 7 respectively.

Thus, continuing with the example, of Table 10, Table 12 shows the Market Price weigh W_(m)

TABLE 12 Wq Wd Wm 6.9375 17.0000 23.9375 Market Price Scatter (σ_(m))

Applying the definition of Standard Deviation, we get the Market Price Scatter as follow:

$\begin{matrix} {\sigma_{m} = \left. \sqrt{}\frac{\begin{matrix} {{\lambda \; {V_{o}\left( {P_{b} - P_{m}} \right)}^{2}} + {\lambda \; {V_{b}\left( {P_{o} - P_{m}} \right)}^{2}} +} \\ {\sum\limits_{i}{{W\left( d_{i} \right)}\left( {{P\left( d_{i} \right)} - P_{m}} \right)^{2}}} \end{matrix}}{{\lambda \; V_{o}} + {\lambda \; V_{b}} + {\sum\limits_{i}{W\left( d_{i} \right)}}} \right.} & {{Equation}\mspace{14mu} 13} \end{matrix}$

If P_(q)=0 (no quotes, one-sided-market), then quotes are no longer part of the consideration and Equation 13 becomes:

$\begin{matrix} {\sigma_{m} = \left. \sqrt{}\frac{\sum\limits_{i}{{W\left( d_{i} \right)}\left( {{P\left( d_{i} \right)} - P_{m}} \right)^{2}}}{\sum\limits_{i}{W\left( d_{i} \right)}} \right.} & {{Equation}\mspace{14mu} 13(b)} \end{matrix}$

Table 13 continues the example of table 10 and shows calculations of Market Price Scatter:

TABLE 13 Price Weight Pm Deals (P) (W) λ W * (P − Pm)2 0.9779836 1 0.9781 2 0.0000000271 2 0.9780 2 0.0000000005 3 0.9781 1 0.0000000136 4 0.9780 7 0.0000000019 5 0.9779 5 0.0000000349 Bid->Buy 0.9780 50.000 0.1 0.0000000014 Offer->Sell 0.9779 19.375 0.1 0.0000000135 Total: 23.937500 0.0000000929 Scatter 0.0000622966 (σ_(m)):

At each tick t, the Market Price uses the current, latest information of the market. But in some off-peak hours or in some less-active currency pairs, complete current information may not be available. In those situations, Market Price (P_(m), W_(m), σ_(m)) must be combined with the previous Benchmark Price to derive the current price.

Having now obtained the Market Price, the Benchmark Price may now be derived.

Benchmark Price

Suppose the current tick is n, then current Benchmark Price triplet (P_(n), W_(n), σ_(n)) is derived from the current Market Price (P_(m), W_(m), σ_(m)), the last Benchmark Price (P_(n−1), W_(n−1), σ_(n−1)) calculated at the last tick, and a Phantom Price (P_(ph), W_(ph), σ_(ph)). As the last benchmark was calculated one time-interval ago, it is discounted accordingly.

The weight of the last Benchmark Price is marked down by a faction of 2^(−cT), where T is the time interval from the last Benchmark to the current tick.

Phantom Price is an imaginary price introduced to balance the no-price situation. The Phantom price has a very tiny weight that injects little influence on the calculations when prices are present, but which prevents the Benchmark weight from becoming zero where there are no prices in the Benchmark period. This, in turn, prevents the Standard Error from becoming infinite. It follows that in an active market, the phantom price is not essential to the calculation of the benchmark.

When prices exist in the market, Phantom Price is equal to Market Price. When there is no price in the market, Phantom Price equals the previous Benchmark Price. That is:

P_(ph)=P_(m) when P_(m)≠0; P_(ph)=P_(n−1) when P_(m)=0.

The weight of the Phantom Price W_(ph) is a tiny constant, for example a half of one-millionth (0.5*10⁻⁶). In the case of the minimum trading amount of one million (of base currency) for most currencies, the weight is ½ unit of the base currency. For example, while the minimum-trading amount for EUR/USD is one million (1,000,000) Euro, its Phantom Price's weight is 0.5 Euro. It will be seen from later discussion that this modest amount can ensure that the Standard Error does not become infinite.

The scatter of Phantom Price σ_(ph) is a tiny constant as well. It is set at 1% of a Big Figure of a currency. The purpose of having σ_(ph) is to prevent the scatter from becoming zero (therefore zero Standard Error) in quiet market.

Benchmark Price (P_(n))

The Benchmark price is the average on the Market Price and (n−1) Benchmark Price, weighted by their Weights. The (n−1) Benchmark Price Weight has an extra time-markdown): Thus

$\begin{matrix} {P_{n} = \frac{{P_{m}*W_{m}} + {P_{n - 1}*W_{n - 1}*2^{- {cT}}} + {P_{p\; h}*W_{p\; h}}}{W_{m} + {W_{n - 1}*2^{- {cT}}} + W_{p\; h}}} & {{Equation}\mspace{14mu} 14} \end{matrix}$

where

-   -   P_(m) is the Market Price from Equation 10 above;     -   W_(m) is the Market Price Weight from Equation 11;     -   P_(n−1) is the previous Benchmark Price;     -   P_(ph) is Phantom Price. P_(ph)=P_(m) if P_(m)≠0; P_(ph)=P_(n−1)         if P_(m)=0;     -   W_(ph) is the weight of Phantom Price, a small constant, set at         0.5*10⁻⁶;     -   W_(n−1) is the previous Benchmark Price Weight;     -   T is the tick time interval in seconds; and     -   c is a constant coefficient of adjustment defining the speed of         deal/Benchmark price markdown.

The coefficient c is the same one used in the deal price elapsed-time markdown.

In the case of a still-market (P_(m)=0, W_(m)=0), P_(n)=P_(n−1). That is, Benchmark Price does not change.

Referring back to the example as discussed in Table 11, suppose c=1.0 and T=1, and suppose P_(n−1)=0.9778096128, W_(n−1)=19.0458, the Benchmark Price P_(n) by using Equation 13 is shown in the Table below.

TABLE 14 Wm + Wn − 1 * Pm Wm Pn − 1 Wn − 1 Pph Wph 2-ct + Wph Pn 0.9779835509 23.9375 0.9778095128 19.0458 0.9778095128 0.000001 33.4604009156 0.9779340193

Benchmark Price Weight (W_(n))

The Benchmark Price Weight is a summation of Market Price Weight and the last Benchmark Price Weight after applying the time markdown of 2^(−cT):

W _(n) =W _(m) +W _(n−1)*2^(−cT) +W _(ph)  Equation 15

Where the Phantom Price Weight W_(ph) is a small constant.

Again, the Phantom Price is introduced solely to prevent the weight of the Benchmark from going down to zero in a quiet market when there is neither any price nor deal. Since its weight is tiny, it does not effect the price in a regular or busy market.

In the case of a still-market (P_(m)=0, W_(n)=0), suppose W₁ is the last Benchmark Price before an interval with no new active prices, then the Benchmark Price Weights are:

$W_{1},{W_{2} = {{W_{1}*2^{- {cT}}} + W_{p\; h}}},{W_{3} = {{{W_{2}*2^{- {cT}}} + W_{p\; h}} = {{W_{1}*2^{{- 2}{cT}}} + {W_{p\; h}*2^{- {cT}}} + W_{p\; h}}}},\ldots,\begin{matrix} {W_{n} = {{{W_{n - 1}*2^{- {cT}}} + W_{p\; h}} = {{W_{1}*2^{{- {({n - 1})}}{cT}}} +}}} \\ {{{W_{p\; h}*2^{{- {({n - 2})}}{cT}}} + \ldots + {W_{p\; h}*2^{- {cT}}} + W_{p\; h}}} \\ {= {{W_{1}*2^{{- {({n - 1})}}{cT}}} + {{W_{p\; h}\left( {1 - 2^{{- {({n - 1})}}{cT}}} \right)}/\left( {1 - 2^{- {cT}}} \right)}}} \\ {= {{W_{1}*2^{{- {({n - 1})}}{cT}}} + {W_{p\; h}/\left( {1 - 2^{- {cT}}} \right)} - {W_{p\; h}*{2^{{- {({n - 1})}}{cT}}/\left( {1 - 2^{- {cT}}} \right)}}}} \end{matrix}$

When n→∞≈(c=1 and Benchmark is calculated every second: T=1), then W_(n)→W_(ph)/(1−2^(−cT))=2*W_(ph). That is, in a quiet market, the weight converges to 2*W_(ph). If Phantom Price is 0.5*10⁻⁶ (0.0000005), then the weight converges to 10⁻⁶ (one-millionth).

Continuing with the example of Table 14, suppose c=1.0, T=1, Equation 14 provides a Benchmark Price Weight W_(n)=W_(m)+W_(n−1)*2^(−cT)=33.4603999156.

Benchmark Price Scatter (v=)

Before calculating the Benchmark Price scatter σ_(n), the combined values of the Market Price and Phantom Price must be obtained.

In general, with two samples of the same population, there are two sets of means, sample sizes (weights) and Standard Deviations (Scatters). The two samples can be combined and the combined samples' Standard Deviation SD can be derived from the SDs of the two separate samples. Thus:

$\begin{matrix} {{\left( {4.3{.0}} \right)\mspace{14mu} \sigma_{1 + 2}} = {\left. \sqrt{}\frac{\left( {N_{1} - 1} \right)\sigma_{1}^{2}}{N_{1} + N_{2} - 1} \right. + \frac{\left( {N_{2} - 1} \right)\sigma_{2}^{2}}{N_{1} + N_{2} - 1} + \frac{N_{1}{N_{2}\left( {M_{1} - M_{2}} \right)}^{2}}{\left( {N_{1} + N_{2}} \right)\left( {N_{1} + N_{2} - 1} \right)}}} & {{Equation}\mspace{14mu} 16} \end{matrix}$

Where M₁, M₂, σ, σ₂ and N₁, N₂ are the means, SDs and sample sizes of the two samples. The combined price, weight and scatter triplet of (P_(c), W_(c), σ_(c)) are then obtained from the Market Price (P_(m), W_(m), σ_(m)) and the Phantom Price (P_(ph), W_(ph), σ_(ph)).

As the Phantom Price equal the Market Price when a Market Price exists, and equals the previous Benchmark Price when no Market Price exists, P_(c)=P_(m) if P_(m)≠0; P_(c)=P_(n−1) if P_(m)=0. The combined weight W_(c)=W_(m)+W_(ph).

Finally, by applying the combined standard deviation of Equation 16 on (P_(m), W_(m), σ_(m)), and (P_(ph), W_(ph), σ_(ph)):

$\begin{matrix} {\sigma_{c} = {\left. \sqrt{}\frac{\left( {W_{m} - 1} \right)\sigma_{m}^{2}}{W_{m} + W_{p\; h} - 1} \right. + \frac{\left( {W_{p\; h} - 1} \right)\sigma_{p\; h}^{2}}{W_{m} + W_{p\; h} - 1} + \frac{W_{m}{W_{p\; h}\left( {P_{m} - P_{p\; h}} \right)}^{2}}{\left( {W_{m} + W_{p\; h}} \right)\left( {W_{m} + W_{p\; h} - 1} \right)}}} & \; \end{matrix}$

From this formula, it can be concluded that when P_(m)≠0, σ_(c)≈σ_(m). That is, when prices exist, σ_(c) is just the Market Price's scatter σ_(m). When P_(m)=0, σ_(c)≈√σ_(m) ²+σ_(ph) ² That is, when there is no prices, σ_(c) is bounded by at least one σ_(ph), since √σ_(m) ²+σ_(ph) ²≧σ_(ph). This effectively prevents σ_(c) from going down to zero.

With (P_(c), W_(c), σ_(c)) having been derived, the Benchmark Price scatter can be calculated.

Applying Equation 16 on (P_(c), W_(c), σ_(c)) and (P_(n−1), W_(n−1)*2^(−cT), σ_(n−1)), gives:

$\begin{matrix} {\sigma_{n} = {\left. \sqrt{}\frac{\left( {W_{c} - 1} \right)\sigma_{c}^{2}}{W_{c} + {W_{n - 1}*2^{- {cT}}} - 1} \right. + \frac{\left( {{W_{{n - 1}\;}*2^{- {cT}}} - 1} \right)\sigma_{n - 1}^{2}}{W_{c} + {W_{n - 1}*2^{- {cT}}} - 1} + \frac{W_{c}W_{n - 1}*2^{- {cT}}\left( {P_{c} - P_{n - 1}} \right)^{2}}{\left( {W_{c} + {W_{n - 1}*2^{- {cT}}}} \right)\left( {W_{c} + {W_{n - 1}*2^{- {cT}}} - 1} \right)}}} & {{Equation}\mspace{14mu} 17} \end{matrix}$

Equation 17 functions like the combined scatter over (P_(m), W_(m), σ_(m)) and (P_(n−1), W_(n−1)*2^(−cT), σ_(n−1)), since when P_(m)≠0, P_(c)=P_(m), W_(c)≈W_(m) and σ_(c)≈σ_(m). In the case of a still-market (P_(m)=0, W_(m)=0), σ_(n)≈√σ_(n−1) ²+σ_(ph) ².

That is, the scatter is bounded by at least one σ_(ph). It makes sense that, when there is no price in market, the scatter is at least one σ_(ph) (it is set at 1% of a Big Figure or one pip).

Following the example of Table 14, Table 15 shows the Benchmark Price Scatter:

TABLE 15 Wm + Wn − 1 * Pm Wm σ_(m) Pn − 1 Wn − 1 σ_(n−1) 2-ct σ_(n) 0.9779835509 23.9375 0.0000622966 0.9778095128 19.0458 0.0000761207 33.4603999156 0.0001029197

Benchmark Price Error (E_(n))

The Standard Error is a commonly used index of the error entailed in estimating a population mean based on the information in a random sample of size N:

$E_{n} = \left. \sqrt{}\frac{\sigma^{2}}{N} \right.$

In this case, σ is the Benchmark Price Scatter σ_(n), and N=W_(n)=W_(m)+W_(n−1)*2^(−cT)+W_(ph):

$\begin{matrix} {E_{n} = \left. \sqrt{}\frac{\sigma_{n}^{2}}{W_{m} + {W_{n - 1}*2^{- {cT}}} + W_{p\; h}} \right.} & {{Equation}\mspace{14mu} 18} \end{matrix}$

It can be seen that E_(n) is always smaller than the Benchmark Price Scatter σ_(n). The larger the weights, corresponding to more sample points, the smaller the error.

In the case of a still-market (P_(m)=0, W_(m)=0)

$E_{n} = \frac{\sigma_{n}}{{\left. \sqrt{}W_{n - 1} \right.*2^{- {cT}}} + W_{p\; h}}$

when n→∞, the Error E_(n)→σ_(n)/√2*W_(ph). When W_(ph)=0.5*10⁻⁶, E_(n)→σ_(n)/√0.000001=1000*σ_(n).

In other words, if the scatter σ_(n) is at one pip, then the Standard Error is at 10 big figures.

The Standard Error (E_(n)) has its special meaning, as explained below. 2*E_(n) defines the “95%-bracket” around Benchmark Price P_(n). That is, in a still-market, if the scatter is one pip, then the “95%-bracket” is bounded by 20 big figures on each side of the Benchmark Price; if the scatter is two pips, then the “95%-bracket” is bounded by 40 big figures on each side of the Benchmark Price.

Continuing with the example of Table 15, the Benchmark Price Error can now be calculated.

E_(n)=sqrt(σ_(n) ²/(W_(m)+W_(n−1)*2^(−cT)+W_(ph)))=sqrt(0.0001029197²/33.460−40092)=0.0000177923.

Therefore, twice the Standard Error=2*0.0000177923=0.0000355847 (pips).

That is, at tick n, the Benchmark Price of 0.9779340193 has a 95% chance lying within 0.0000355847 pips of the true price P, or, the Benchmark Price of 0.9779340193 has a 95% chance satisfying:

P−0.0000355847<0.9779340193<P+0.0000355847

The Standard Error of the mean may be calculated as follows:

Central Limit Theorem

If P is a population of size m and S is a sample of P with size n (n<m), let MN(S) be the mean of S, and SD(S) be the Standard Deviation of S, then Central Limit Theorem states that:

-   (1) When n is large, the distribution of the means M_(i) of ALL     possible samples of size n is approximately a Normal Distribution     (that is, M₁ M₂, . . . , M_(k) form a normal distribution); -   (2) MN (M_(i))=MN(P) -    That is, the mean of the distribution of M_(i) equals to the mean     of the population. -   (3)

${S\; {D\left( M_{i} \right)}} = {S\; {{D(P)}/{{sqrt}(n)}}\overset{{defined}\mspace{14mu} {as}}{{\operatorname{===}\operatorname{===}\operatorname{===}}\mspace{14mu}}{Standard}\mspace{14mu} {Error}\mspace{14mu} \left( {S\; E} \right)}$

-    That is, the SD of the distribution of M_(i) equals the SD of the     population divided by the square root of n.

Since M_(i) is a Normal Distribution, then the mean of a random sample S has a 68% chance of lying within one SE of the population mean, or a 95% change lying within two SE of the population mean:

MN(P)−2*SE<MN(S)<MN(P)+2*SE.

(Conversely, the population mean has a 68% chance of lying within one SE of the mean of a single randomly chosen sample S, and a 95% chance of lying within two SE of the mean of a single randomly chosen sample S).

SE Approximation

Since SD (P) is usually not available, it is a common practice when n is large to use the Standard Deviation of a sample S instead:

${S\; E} = {{S\; {D\left( M_{i} \right)}} = {{{{SD}(P)}/{{sqrt}(n)}}\; \overset{{approximated}\mspace{14mu} {by}}{\operatorname{===}\operatorname{===}\operatorname{===}\operatorname{===}}S\; {{D(S)}/{{sqrt}(n)}}}}$

Therefore, for any sample of size n the SE of the Mean can be calculated (approximated).

The following section gives some examples of Benchmark calculations following the Equations derived in the foregoing sections.

Example 1

This example is a summary of the examples used above. Deal Price=(Pd, Wd, σ_(d)), Quote Price=(Pq, Wq, σ_(q)), Market Price=(Pm, Wm, σ_(m)), and Benchmark Price at n=(Pn, Wn, σ_(n)).

Example 2.1

Quote only market: There are only two quotes in market. They are 1 pip apart, 1 million on each side. We want to find out Benchmark's (P_(n), W_(n), σ_(n)) and SE.

Note that when there is no deal, Market Price is the same as the Quote Price. By applying Benchmark formulas, we have:

Quote Prices Benchmarks Bid Vb Offer Vo Pq Wq σ_(q) Pn Wn σ_(n) SE 0 0 0 0.9800 1 0.9801 1 0.98005 0.2 0.000050 0.98005 0.2 0.000050 0.00011180 0.9800 1 0.9801 1 0.98005 0.2 0.000050 0.98005 0.3 0.000050 0.00009129 0.9800 1 0.9801 1 0.98005 0.2 0.000050 0.98005 0.35 0.000050 0.00008452 0.9800 1 0.9801 1 0.98005 0.2 0.000050 0.98005 0.375 0.000050 0.00008165 0.9800 1 0.9801 1 0.98005 0.2 0.000050 0.98005 0.3875 0.000050 0.00008032 0.9800 1 0.9801 1 0.98005 0.2 0.000050 0.98005 0.39375 0.000050 0.00007968 0.9800 1 0.9801 1 0.98005 0.2 0.000050 0.98005 0.396875 0.000050 0.00007937 0.9800 1 0.9801 1 0.98005 0.2 0.000050 0.98005 0.3984375 0.000050 0.00007921 0.9800 1 0.9801 1 0.98005 0.2 0.000050 0.98005 0.3992188 0.000050 0.00007913 0.9800 1 0.9801 1 0.98005 0.2 0.000050 0.98005 0.3996094 0.000050 0.00007910 0.9800 1 0.9801 1 0.98005 0.2 0.000050 0.98005 0.3998047 0.000050 0.00007908 0.9800 1 0.9801 1 0.98005 0.2 0.000050 0.98005 0.3999023 0.000050 0.00007907 0.9800 1 0.9801 1 0.98005 0.2 0.000050 0.98005 0.3999512 0.000050 0.00007906 0.9800 1 0.9801 1 0.98005 0.2 0.000050 0.98005 0.3999756 0.000050 0.00007906 0.9800 1 0.9801 1 0.98005 0.2 0.000050 0.98005 0.3999878 0.000050 0.00007906 0.9800 1 0.9801 1 0.98005 0.2 0.000050 0.98005 0.3999939 0.000050 0.00007906 0.9800 1 0.9801 1 0.98005 0.2 0.000050 0.98005 0.3999969 0.000050 0.00007906 0.9800 1 0.9801 1 0.98005 0.2 0.000050 0.98005 0.3999985 0.000050 0.00007906 0.9800 1 0.9801 1 0.98005 0.2 0.000050 0.98005 0.3999992 0.000050 0.00007906 0.9800 1 0.9801 1 0.98005 0.2 0.000050 0.98005 0.3999996 0.000050 0.00007906 0.9800 1 0.9801 1 0.98005 0.2 0.000050 0.98005 0.3999998 0.000050 0.00007906 0.9800 1 0.9801 1 0.98005 0.2 0.000050 0.98005 0.3999999 0.000050 0.00007906 0.9800 1 0.9801 1 0.98005 0.2 0.000050 0.98005 0.4 0.000050 0.00007906 0.9800 1 0.9801 1 0.98005 0.2 0.000050 0.98005 0.4 0.000050 0.00007906 0.9800 1 0.9801 1 0.98005 0.2 0.000050 0.98005 0.4 0.000050 0.00007906 SE = 0.00007906, 2 * SE = 0.0001581, 4 * SE = 0.000316

The relationship between the Benchmark and the Bid and offer prices is shown in FIG. 2. A number of conclusions can be drawn as follows:

-   (1) The Benchmark Price P_(n) is in the middle of the bid and offer,     (P_(b)+P_(o))/2, as expected. -   (2) The Benchmark Price Weight W_(n) converges to (2×total volume×λ)     Namely, W_(n)−>2×2×0.1=0.4 after 16 rounds (16 seconds) -   (3) The Benchmark Price Scatter σ_(n) is ½ of the quote spread, as     expected. SE is larger the D_(n) because W_(n) is small (0.4)

Example 2.2

Quote only market: There are only two quotes in market. They are 2 pips apart, 1 million on each side. We want to find out (P_(n), W_(n), σ_(n)) and SE. This example is the same as 2.1 above, except for the larger spread.

Note that when there is no deal, Market Price is the same as the Quote Price. By applying Benchmark formulas, we have:

Quote Prices Benchmarks Bid Vb Offer Vo Pq Wq σ_(q) Pn Wn σ_(n) SE 0 0 0 0.9800 1 0.9802 1 0.9801 0.2 0.000100 0.9801 0.2 0.000100 0.00022361 0.9800 1 0.9802 1 0.9801 0.2 0.000100 0.9801 0.3 0.000100 0.00018257 0.9800 1 0.9802 1 0.9801 0.2 0.000100 0.9801 0.35 0.000100 0.00016903 0.9800 1 0.9802 1 0.9801 0.2 0.000100 0.9801 0.375 0.000100 0.00016330 0.9800 1 0.9802 1 0.9801 0.2 0.000100 0.9801 0.3875 0.000100 0.00016064 0.9800 1 0.9802 1 0.9801 0.2 0.000100 0.9801 0.39375 0.000100 0.00015936 0.9800 1 0.9802 1 0.9801 0.2 0.000100 0.9801 0.396875 0.000100 0.00015874 0.9800 1 0.9802 1 0.9801 0.2 0.000100 0.9801 0.3984375 0.000100 0.00015842 0.9800 1 0.9802 1 0.9801 0.2 0.000100 0.9801 0.3992188 0.000100 0.00015827 0.9800 1 0.9802 1 0.9801 0.2 0.000100 0.9801 0.3996094 0.000100 0.00015819 0.9800 1 0.9802 1 0.9801 0.2 0.000100 0.9801 0.3998047 0.000100 0.00015815 0.9800 1 0.9802 1 0.9801 0.2 0.000100 0.9801 0.3999023 0.000100 0.00015813 0.9800 1 0.9802 1 0.9801 0.2 0.000100 0.9801 0.3999512 0.000100 0.00015812 0.9800 1 0.9802 1 0.9801 0.2 0.000100 0.9801 0.3999756 0.000100 0.00015812 0.9800 1 0.9802 1 0.9801 0.2 0.000100 0.9801 0.3999878 0.000100 0.00015812 0.9800 1 0.9802 1 0.9801 0.2 0.000100 0.9801 0.3999939 0.000100 0.00015812 0.9800 1 0.9802 1 0.9801 0.2 0.000100 0.9801 0.3999969 0.000100 0.00015811 0.9800 1 0.9802 1 0.9801 0.2 0.000100 0.9801 0.3999985 0.000100 0.00015811 0.9800 1 0.9802 1 0.9801 0.2 0.000100 0.9801 0.3999992 0.000100 0.00015811 0.9800 1 0.9802 1 0.9801 0.2 0.000100 0.9801 0.3999996 0.000100 0.00015811 0.9800 1 0.9802 1 0.9801 0.2 0.000100 0.9801 0.3999998 0.000100 0.00015811 0.9800 1 0.9802 1 0.9801 0.2 0.000100 0.9801 0.3999999 0.000100 0.00015811 0.9800 1 0.9802 1 0.9801 0.2 0.000100 0.9801 0.4 0.000100 0.00015811 0.9800 1 0.9802 1 0.9801 0.2 0.000100 0.9801 0.4 0.000100 0.00015811 0.9800 1 0.9802 1 0.9801 0.2 0.000100 0.9801 0.4 0.000100 0.00015811 SE = 0.00015811, 2 * SE = 0.0003162, 4 * SE = 0.00063247

The relationship between the Benchmark and the Bid and offer prices is shown in FIG. 3. A number of conclusions can be drawn as follows:

There is no change for (1) and (2). But the wider spread changes σ_(n) and SE:

(1) P_(n) is at the middle of the bid and offer, (P_(b)+P_(o))/2, as expected. (2) No weight change, W_(n) converges to (2×total volume×λ)=2×2×0.1=0.4 after 16 rounds. (3) σ_(n) is ½ of the quote spread, as expected. But since the spread is twice as large as in Example 2.1, σ_(n) and SE both double their values. It makes sense: wider spread makes the market less certain.

Example 2.3

Quote only market: There are only two quotes in market. They are 1 pip apart, 2 million on each side. We want to find out (P_(n), W_(n), σ_(n)) and SE. (This example is the same as 2.1, only with larger volumes).

Note that when there is no deal, Market Price is the same as the Quote Price. By applying Benchmark formulas, we have:

Quote Prices Benchmarks Bid Vb Offer Vo Pq Wq σ_(q) Pn Wn σ_(n) SE 0 0 0 0.9800 2 0.9801 2 0.98005 0.4 0.000050 0.98005 0.4 0.000050 0.00007906 0.9800 2 0.9801 2 0.98005 0.4 0.000050 0.98005 0.6 0.000050 0.00006455 0.9800 2 0.9801 2 0.98005 0.4 0.000050 0.98005 0.7 0.000050 0.00005976 0.9800 2 0.9801 2 0.98005 0.4 0.000050 0.98005 0.75 0.000050 0.00005774 0.9800 2 0.9801 2 0.98005 0.4 0.000050 0.98005 0.775 0.000050 0.00005680 0.9800 2 0.9801 2 0.98005 0.4 0.000050 0.98005 0.7875 0.000050 0.00005634 0.9800 2 0.9801 2 0.98005 0.4 0.000050 0.98005 0.79375 0.000050 0.00005612 0.9800 2 0.9801 2 0.98005 0.4 0.000050 0.98005 0.796875 0.000050 0.00005601 0.9800 2 0.9801 2 0.98005 0.4 0.000050 0.98005 0.7984375 0.000050 0.00005596 0.9800 2 0.9801 2 0.98005 0.4 0.000050 0.98005 0.7992188 0.000050 0.00005593 0.9800 2 0.9801 2 0.98005 0.4 0.000050 0.98005 0.7996094 0.000050 0.00005592 0.9800 2 0.9801 2 0.98005 0.4 0.000050 0.98005 0.7998047 0.000050 0.00005591 0.9800 2 0.9801 2 0.98005 0.4 0.000050 0.98005 0.7999023 0.000050 0.00005591 0.9800 2 0.9801 2 0.98005 0.4 0.000050 0.98005 0.7999512 0.000050 0.00005590 0.9800 2 0.9801 2 0.98005 0.4 0.000050 0.98005 0.7999756 0.000050 0.00005590 0.9800 2 0.9801 2 0.98005 0.4 0.000050 0.98005 0.7999878 0.000050 0.00005590 0.9800 2 0.9801 2 0.98005 0.4 0.000050 0.98005 0.7999939 0.000050 0.00005590 0.9800 2 0.9801 2 0.98005 0.4 0.000050 0.98005 0.7999969 0.000050 0.00005590 0.9800 2 0.9801 2 0.98005 0.4 0.000050 0.98005 0.7999985 0.000050 0.00005590 0.9800 2 0.9801 2 0.98005 0.4 0.000050 0.98005 0.7999992 0.000050 0.00005590 0.9800 2 0.9801 2 0.98005 0.4 0.000050 0.98005 0.7999996 0.000050 0.00005590 0.9800 2 0.9801 2 0.98005 0.4 0.000050 0.98005 0.7999998 0.000050 0.00005590 0.9800 2 0.9801 2 0.98005 0.4 0.000050 0.98005 0.7999999 0.000050 0.00005590 0.9800 2 0.9801 2 0.98005 0.4 0.000050 0.98005 0.8 0.000050 0.00005590 0.9800 2 0.9801 2 0.98005 0.4 0.000050 0.98005 0.8 0.000050 0.00005590 SE = 0.00005590, 2 * SE = 0.0001118, 4 * SE = 0.00022361

The relationship between the Benchmark and the Bid and offer prices is shown in FIG. 4. A number of conclusions can be drawn as follows:

There is no change for (1) and σ_(n); weight doubles; The doubling of the Weight makes SE smaller:

1) P_(n) is at the middle of the bid and offer, (P_(b)+P_(o))/2, as expected. (2) Weight doubles. W_(n) converges to (2×total volume×λ) 2×4×0.1=0.8 after 16 rounds. (3) σ_(n) is ½ of the quote spread, as expected. But since the heavier Weight (more certainty), SE decreases almost 30% comparing with Example 2.1 (it is inversely proportional to sqrt(Weight)).

Example 3.1

Deal only market: There are only one 1 million deals occurring every second at the same price. We want to find out (P_(n), W_(n), σ_(n)) and SE. Note that when there is no quote, Market Price is the same as the Deal Price. By applying Benchmark formulas, we have:

Deal Prices Benchmarks Deal Pd Wd σ_(d) Pn Wn σ_(n) SE 0.00000 0 0.000000 0.9800 0.98000 1 0.00000000 0.98000 1 0.000000 0.00000000 0.9800 0.98000 1 0.00000000 0.98000 1.5 0.000000 0.00000000 0.9800 0.98000 1 0.00000000 0.98000 1.75 0.000000 0.00000000 0.9800 0.98000 1 0.00000000 0.98000 1.875 0.000000 0.00000000 0.9800 0.98000 1 0.00000000 0.98000 1.9375 0.000000 0.00000000 0.9800 0.98000 1 0.00000000 0.98000 1.96875 0.000000 0.00000000 0.9800 0.98000 1 0.00000000 0.98000 1.984375 0.000000 0.00000000 0.9800 0.98000 1 0.00000000 0.98000 1.9921875 0.000000 0.00000000 0.9800 0.98000 1 0.00000000 0.98000 1.9960938 0.000000 0.00000000 0.9800 0.98000 1 0.00000000 0.98000 1.9980469 0.000000 0.00000000 0.9800 0.98000 1 0.00000000 0.98000 1.9990234 0.000000 0.00000000 0.9800 0.98000 1 0.00000000 0.98000 1.9995117 0.000000 0.00000000 0.9800 0.98000 1 0.00000000 0.98000 1.9997559 0.000000 0.00000000 0.9800 0.98000 1 0.00000000 0.98000 1.9998779 0.000000 0.00000000 0.9800 0.98000 1 0.00000000 0.98000 1.999939 0.000000 0.00000000 0.9800 0.98000 1 0.00000000 0.98000 1.9999695 0.000000 0.00000000 0.9800 0.98000 1 0.00000000 0.98000 1.9999847 0.000000 0.00000000 0.9800 0.98000 1 0.00000000 0.98000 1.9999924 0.000000 0.00000000 0.9800 0.98000 1 0.00000000 0.98000 1.9999962 0.000000 0.00000000 0.9800 0.98000 1 0.00000000 0.98000 1.9999981 0.000000 0.00000000 0.9800 0.98000 1 0.00000000 0.98000 1.999999 0.000000 0.00000000 0.9800 0.98000 1 0.00000000 0.98000 1.9999995 0.000000 0.00000000 0.9800 0.98000 1 0.00000000 0.98000 1.9999998 0.000000 0.00000000 0.9800 0.98000 1 0.00000000 0.98000 1.9999999 0.000000 0.00000000 0.9800 0.98000 1 0.00000000 0.98000 1.9999999 0.000000 0.00000000 0.9800 0.98000 1 0.00000000 0.98000 2 0.000000 0.00000000

FIG. 5 shows the relationship between Deal Price and Benchmark price.

The following conclusions can be drawn:

(1) The Benchmark Price P_(n) is at the deal price, as expected. (2) The Benchmark Price Weight W_(n) converges to (2×total volume Namely, W_(n)−>2×1=2 after 22 rounds (22 seconds). (3) The Benchmark Price Scatter σ_(n) and SE are zeros, as expected. Since there is only one deal in market.

Example 3.2

Deal only market: There is only one 1 million deal occurring every second alternately at two different prices one pip apart. We want to find out (P_(n), W_(n), σ_(n)) and SE. This example is like Example 3.1, only deal prices are not at a steady price but “vibrate” one-pip apart. By applying the formulas, we have:

Deal Prices Benchmarks Deal Deal Pd Wd σ_(d) Pn Wn σ_(n) SE 0.00000 0 0.000000 0.9800 0.98000 1 0.00000000 0.98000 1 0.000000 0.00000000 0.9801 0.98010 1 0.00000000 0.98007 1.5 0.000047 0.00003849 0.9800 0.98000 1 0.00000000 0.98003 1.75 0.000045 0.00003415 0.9801 0.98010 1 0.00000000 0.98007 1.875 0.000047 0.00003443 0.9800 0.98000 1 0.00000000 0.98003 1.9375 0.000047 0.00003358 0.9801 0.98010 1 0.00000000 0.98007 1.96875 0.000047 0.00003360 0.9800 0.98000 1 0.00000000 0.98003 1.984375 0.000047 0.00003340 0.9801 0.98010 1 0.00000000 0.98007 1.9921875 0.000047 0.00003340 0.9800 0.98000 1 0.00000000 0.98003 1.9960938 0.000047 0.00003335 0.9801 0.98010 1 0.00000000 0.98007 1.9980469 0.000047 0.00003335 0.9800 0.98000 1 0.00000000 0.98003 1.9990234 0.000047 0.00003334 0.9801 0.98010 1 0.00000000 0.98007 1.9995117 0.000047 0.00003334 0.9800 0.98000 1 0.00000000 0.98003 1.9997559 0.000047 0.00003333 0.9801 0.98010 1 0.00000000 0.98007 1.9998779 0.000047 0.00003333 0.9800 0.98000 1 0.00000000 0.98003 1.999939 0.000047 0.00003333 0.9801 0.98010 1 0.00000000 0.98007 1.9999695 0.000047 0.00003333 0.9800 0.98000 1 0.00000000 0.98003 1.9999847 0.000047 0.00003333 0.9801 0.98010 1 0.00000000 0.98007 1.9999924 0.000047 0.00003333 0.9800 0.98000 1 0.00000000 0.98003 1.9999962 0.000047 0.00003333 0.9801 0.98010 1 0.00000000 0.98007 1.9999981 0.000047 0.00003333 0.9800 0.98000 1 0.00000000 0.98003 1.999999 0.000047 0.00003333 0.9801 0.98010 1 0.00000000 0.98007 1.9999995 0.000047 0.00003333 0.9800 0.98000 1 0.00000000 0.98003 1.9999998 0.000047 0.00003333 0.9801 0.98010 1 0.00000000 0.98007 1.9999999 0.000047 0.00003333 0.9800 0.98000 1 0.00000000 0.98003 1.9999999 0.000047 0.00003333 0.9801 0.98010 1 0.00000000 0.98007 2 0.000047 0.00003333 SE = 0.00003333, 2 * SE = 0.000067, 4 * SE = 0.00013

FIG. 6 shows the relationship between Deal Prices and Benchmarks over time.

From FIG. 6, we can conclude:

There is no change for Weight, but everything else changes:

(1) The Benchmark Price P_(n) also “vibrates” in between deal prices, but with only a 40% “amplitude” of the deals. This is because of the Benchmark at tick n is smoothed by the price at the previous tick. (2) The Benchmark Price Weight W_(n) converges to (2×total volume)=2×1=2. (3) The Benchmark Scatter is at 0.47 pips (47% of the deal price spread).

Example 3.3

Deal only market: There are only two 1 million deals occurring every second at two different prices one-pip apart. We want to find out (P_(n), W_(n), σ_(n)) and SE. By applying Benchmark formulas, we have:

Deal Prices Benchmarks Deal Deal Pd Wd σ_(d) Pn Wn σ_(n) SE 0.00000 0 0.000000 0.9800 0.9801 0.98005 2 0.00005000 0.98005 2 0.000050 0.00003536 0.9800 0.9801 0.98005 2 0.00005000 0.98005 3 0.000050 0.00002887 0.9800 0.9801 0.98005 2 0.00005000 0.98005 3.5 0.000050 0.00002673 0.9800 0.9801 0.98005 2 0.00005000 0.98005 3.75 0.000050 0.00002582 0.9800 0.9801 0.98005 2 0.00005000 0.98005 3.875 0.000050 0.00002540 0.9800 0.9801 0.98005 2 0.00005000 0.98005 3.9375 0.000050 0.00002520 0.9800 0.9801 0.98005 2 0.00005000 0.98005 3.96875 0.000050 0.00002510 0.9800 0.9801 0.98005 2 0.00005000 0.98005 3.984375 0.000050 0.00002505 0.9800 0.9801 0.98005 2 0.00005000 0.98005 3.9921875 0.000050 0.00002502 0.9800 0.9801 0.98005 2 0.00005000 0.98005 3.9960938 0.000050 0.00002501 0.9800 0.9801 0.98005 2 0.00005000 0.98005 3.9980469 0.000050 0.00002501 0.9800 0.9801 0.98005 2 0.00005000 0.98005 3.9990234 0.000050 0.00002500 0.9800 0.9801 0.98005 2 0.00005000 0.98005 3.9995117 0.000050 0.00002500 0.9800 0.9801 0.98005 2 0.00005000 0.98005 3.9997559 0.000050 0.00002500 0.9800 0.9801 0.98005 2 0.00005000 0.98005 3.9998779 0.000050 0.00002500 0.9800 0.9801 0.98005 2 0.00005000 0.98005 3.999939 0.000050 0.00002500 0.9800 0.9801 0.98005 2 0.00005000 0.98005 3.9999695 0.000050 0.00002500 0.9800 0.9801 0.98005 2 0.00005000 0.98005 3.9999847 0.000050 0.00002500 0.9800 0.9801 0.98005 2 0.00005000 0.98005 3.9999924 0.000050 0.00002500 0.9800 0.9801 0.98005 2 0.00005000 0.98005 3.9999962 0.000050 0.00002500 0.9800 0.9801 0.98005 2 0.00005000 0.98005 3.9999981 0.000050 0.00002500 0.9800 0.9801 0.98005 2 0.00005000 0.98005 3.999999 0.000050 0.00002500 0.9800 0.9801 0.98005 2 0.00005000 0.98005 3.9999995 0.000050 0.00002500 0.9800 0.9801 0.98005 2 0.00005000 0.98005 3.9999998 0.000050 0.00002500 0.9800 0.9801 0.98005 2 0.00005000 0.98005 3.9999999 0.000050 0.00002500 0.9800 0.9801 0.98005 2 0.00005000 0.98005 3.9999999 0.000050 0.00002500 SE = 0.00002500, 2 * SE = 0.00005000, 4 * SE = 0.0001

FIG. 7 shows the relationship between deal prices and Benchmark prices from which one may conclude:

There is no change for Weight (1) but everything else changes:

(1) The Benchmark Price P_(n) is at the middle of deal prices, as expected. (2) The Benchmark Price Weight W_(n) converges to (2×total volume)=2×2=4. (3) The Benchmark Scatter is at 0.5 pips (50% of the deal price spread). SE decreases compared to Example 3.2 above, as the Weight has doubled, and SE is inversely proportional to sqrt(Weight).

Having discussed how the Benchmarks are derived, the following description details how a system may be set up to calculate benchmarks and distribute them to traders. FIGS. 8 and 9 show two examples of systems for deriving and providing benchmarks to traders. In the system of FIG. 8, benchmarks are derived from price and deal data obtained from a single source. In that of FIG. 9 they are derived from priced and deal data supplied from more than one source.

From the discussion above, it is clear that for a benchmark to be calculated for a given currency pair, the previous benchmark must be available together with bids and offer prices entered into the system since the last benchmark together with the prices of deals done in the time since the last benchmark was calculated.

These bid and offer prices and deals are conveniently supplied from a trading system, for example an anonymous trading system such as that described in U.S. Pat. No. 6,014,627 of Togher et al. However, the information could be supplied from any suitable trading system, trading in the instrument to which the benchmark relates. Such a system must provide price and deal information and may or may not be anonymous. Bid/offer prices and deal prices may even be supplied from a non-computerized source such as an open out cry market or a voice broker.

Most trading systems enable traders to trade a variety of currency pairs. For example, USD: EUR, USA:JPY, USD:CAD; EUR:JPY; EUR:CAD and CAD:JPY and other GB currency pairs. In a preferred embodiment the system will establish a benchmark every t seconds for each of these currency pairs as well as other currency pairs that may be traded. The benchmarks will then be communicated to traders trading on the system and to traders trading on other systems, for example on conversational systems or direct dealing systems. The benchmarks may also be released more generally into the financial community.

In the embodiment of FIG. 8, the anonymous trading system is shown at 10. The price and deal information is passed via a gateway 12 to a market rate feed server 14 where the benchmark calculation is performed according to the algorithm described above. Market Rate Feeders (MRF) are, in themselves, a well-known tool for distributing price information from a source to a number of subscribers, however it is not conventional for them to calculate benchmarks.

The system of U.S. Pat. No. 6,014,627 operates by using a series of arbitrators, based on geographical location, to keep a trading book of orders (bids and offers) entered into the system by traders. Traders receive market views showing the best bids and offers which are filtered by a Market Distributor according to their ability to deal prices. The arbitrator holds a log of all deals conducted on the system and provides deal information, since the last benchmark, together with bids and offers entered and active in the system, via a city node, which is a local node via which trading banks are connected to the system, to the MRF server 14. This market data is delivered to traders 20 on other systems in XML or other formats over a TCP/IP link via a wide area network 22 and a Conversational Direct Dealing (CDD) server 24 and a Secure Communication Server (SCS) 26. The market data is enhanced with the benchmarks calculated by the MRF 14. The benchmarks are also communicated back to the anonymous trading system for distribution, via the market distributor, to traders trading on the anonymous trading system 10. The benchmarks may be used to calculate the big figure (most significant digits) of the currency rate at the anonymous trading system.

Thus, the market rate feed unit 14 differs from prior art units in that the benchmark calculation algorithm described above is implemented. The MRF 14 calculates benchmarks at predetermined equal intervals over a trading day, for example every second. Thus, the MRF receives the order book from the trading system together with the deals done since the last benchmark, calculates the new benchmark and distributes the benchmark.

In the variant of FIG. 9, benchmarks for some currencies may be calculated from trading information provided from a different source than the anonymous trading system 10. This source 28 may be a different trading system, which, for example has greater liquidity in some currency pairs than trading system 10. The benchmarks for some currency pairs will be calculated from the price and deal data provided from the third party trading system 30 via the third party server 28.

As an alternative, the market rate feed server 14 could be configured to receive bid/offer and deal price information for a given currency pair from both the anonymous trading system 10 and the third party trading system 30. 

1. A method of establishing a benchmark price for trades in an instrument at a given time, comprising the step of: periodically calculating the benchmark price from a previous benchmark price and a measure of deal prices occurring since the previous benchmark price, wherein the benchmark price is further calculated with respect to a phantom price, and wherein the phantom price is equal to the previous benchmark price if no prices are entered into the market since the previous benchmark was established, and zero when prices have been entered into the market since the last benchmark was established.
 2. A method according to claim 1, wherein the phantom price is weighted with a weight equal to a very small constant.
 3. A method according to claim 2, wherein the weight of the phantom price is 0.5*10⁻⁶.
 4. A method according to claim 2, wherein the phantom price has a scatter equal to a small constant.
 5. A method according to claim 4, wherein the scatter of the phantom price is equal to 1% of the big figure of the instrument being traded.
 6. A method of establishing a benchmark price for trades in an instrument at a given time, comprising the step of: periodically calculating the benchmark price from a previous benchmark price and a measure of deal prices occurring since the previous benchmark price, wherein the deal prices are weighted in accordance with their age.
 7. A method according to claim 6, comprising calculating a Quote Price from the measure of quote prices.
 8. A method according to claim 7, wherein the Quote Price including a weighting.
 9. A method according to claim 8, wherein the weighting is based on at least one of the quote size, quote age and distance from the best quote in the market of quotes from which the Quote Price is calculated.
 10. A method according to claim 7, comprising calculating a scatter for the Quote Price.
 11. A method according to claim 6, comprising calculating a Deal Price from the measure of deal prices.
 12. A method according to claim 11, wherein the Deal Price including a weighting based on the weighting of the deal prices.
 13. A method according to claim 11, comprising calculating a scatter for the Deal Price.
 14. A method according to claim 6, comprising calculating a Benchmark Price Weight.
 15. A method according to claim 6, comprising calculating a Benchmark Price scatter.
 16. A method according to claim 6, comprising calculating a Benchmark Price Error.
 17. A method of establishing a benchmark price for trades in an instrument at a given time, comprising the step of: periodically calculating the benchmark price from a previous benchmark price and a measure of deal prices occurring since the previous benchmark price, wherein the deal prices are weighted in accordance with their volume.
 18. A method according to claim 17, comprising calculating a Quote Price from the measure of quote prices.
 19. A method according to claim 18, wherein the Quote Price including a weighting.
 20. A method according to claim 19, wherein the weighting is based on at least one of the quote size, quote age and distance from the best quote in the market of quotes from which the Quote Price is calculated.
 21. A method according to claim 18, comprising calculating a scatter for the Quote Price.
 22. A method according to claim 17, comprising calculating a Deal Price from the measure of deal prices.
 23. A method according to claim 18, wherein the Deal Price including a weighting based on said weighting of the deal prices.
 24. A method according to claim 22, comprising calculating a scatter for the Deal Price.
 25. A method according to claim 17, comprising calculating a Benchmark Price Weight.
 26. A method according to claim 18, comprising calculating a Benchmark Price scatter.
 27. A method according to claim 19, comprising calculating a Benchmark Price Error.
 28. A method of establishing a benchmark price for trades in an instrument at a given time, comprising the step of: periodically calculating the benchmark price from a previous benchmark price and a measure of deal prices occurring since the previous benchmark price, wherein the deal prices are weighted in accordance with their age and volume.
 29. A method according to claim 28, comprising calculating a Quote Price from the quote prices.
 30. A method according to claim 29, wherein the Quote Price including a weighting.
 31. A method according to claim 30, wherein the weighting is based on at least one of the quote size, quote age and distance from the best quote in the market of quotes from which the Quote Price is calculated.
 32. A method according to claim 29, comprising calculating a scatter for the Quote Price.
 33. A method according to claim 28, comprising calculating a Deal Price from the deal prices.
 34. A method according to claim 33, wherein the Deal Price including a weighting based on the weighting of the deal prices.
 35. A method according to claim 28, comprising calculating a scatter for the Deal Price.
 36. A method according to claim 28, comprising calculating a Benchmark Price Weight.
 37. A method according to claim 28, comprising calculating a Benchmark Price scatter.
 38. A method according to claim 28, comprising calculating a Benchmark Price Error. 